﻿using Abp.Application.Services.Dto;
using AbpBuild.BaseData;
using AbpBuild.LawManage;
using Nest;
using System;
using System.Collections.Generic;
using System.Text;

namespace AbpBuild.WenShu.Dto
{
    /// <summary>
    /// 文书查询param
    /// </summary>
    public class RecordSearchOutParamDto
    {
        public int skip { get; set; } = 0;
        public int size { get; set; } = 100;
        public string sortorder { get; set; } = "judgeDate";
        public int Ascending { get; set; } = 1;
        public long counts { get; set; } = 1;
        /// <summary>
        /// 数据
        /// </summary>
        public List<RecordSearchOutDTO> Datas { get; set; }
        /// <summary>
        /// 统计信息
        /// </summary>
        public aggs aggs { get; set; }


    }

    public class aggs
    {
        public aggs()
        {
            agg = new Dictionary<string, List<Dictionary<string, long?>>>();
            crs = new List<caseReason>();
            ljps = new List<LawjudgeProcess>();
            re = new List<region>();
        }
        public Dictionary<string, List<Dictionary<string, long?>>> agg { get; set; }
        public List<caseReason> crs { get; set; }
        public List<LawjudgeProcess> ljps { get; set; }
        public List<region> re { get; set; }
    }


    /// <summary>
    /// 文书输出dto
    /// </summary>
    public class RecordSearchOutDTO : EntityDto<string>
    {
        /// <summary>
        /// 名称
        /// </summary>
        public string name { get; set; } //名称
        /// <summary>
        /// 案号
        /// </summary>
        public string docCode { get; set; }  //案号
        /// <summary>
        /// 关联案号
        /// </summary>
        public List<string> docCodeOthers { get; set; }//
        /// <summary>
        /// 当事人
        /// </summary>
        public List<string> peoples { get; set; }//当事人
        /// <summary>
        /// 案由
        /// </summary>
        public List<string> caseReason { get; set; }//案由
        /// <summary>
        /// 审判类型"民事案件"
        /// </summary>
        public string judgeType { get; set; }  //类型          s8 : 
        /// <summary>
        /// 审判流程"民事一审"
        /// </summary>
        public List<string> judgeProcess { get; set; }  //审判流程     s9 : "民事一审"
        /// <summary>
        /// 判决时间
        /// </summary>
        public DateTime? judgeDate { get; set; }
        /// <summary>
        /// 审判法院
        /// </summary>
        public string courtFullName { get; set; }  // 吉林省延吉市人民法院
        /// <summary>
        /// 文书类型 判决书
        /// </summary>
        public string docType { get; set; }  //民事判决书
        /// <summary>
        /// 审判结果
        /// </summary>
        public List<string> judgeResult { get; set; }  //审判结果
        /// <summary>
        /// 审判长
        /// </summary>
        public List<string> judgeZ { get; set; }  //审判长
        /// <summary>
        /// 审判员
        /// </summary>
        public List<string> judges { get; set; }  //审判员 
        /// <summary>
        /// 原告律师
        /// </summary>
        public List<lvmanage> yuangaoLv { get; set; }//原告律师
        /// <summary>
        /// 被告律师
        /// </summary>
        public List<lvmanage> beigaoLv { get; set; }//被告律师
        /// <summary>
        /// 第三人律师
        /// </summary>
        public List<lvmanage> di3renLv { get; set; }//前审相关人律师
        /// <summary>
        /// 法院认为
        /// </summary>
        public List<string> courtClaim { get; set; }
        /// <summary>
        /// 相关法律
        /// </summary>
        public List<relaLaw> lawLists { get; set; }
    }
}
